During a software application development process, a plurality of artifacts may be produced when an application developer is building an application program interface (API). These artifacts may include a design document outlining a plan for building the API, documentation on the functionality of the API, header files, definition files, error messages, tracing information, security notes, example source code, etc. Because a design for the program source code usually changes during the course of the build process, these artifacts may become unsynchronized during the build out of the source code. However, it may be important to keep the artifacts synchronized with source code to prevent a misdirected build out based on outdated or conflicting artifacts. This synchronization may be complicated by a number of factors. Generally, artifacts may be produced at different times during the design and build process and keeping the artifacts consistent with each other may become increasingly difficult the more artifacts produced and the more complicated the API is designed.